home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 7
/
Amiga Format AFCD07 (Dec 1996, Issue 91).iso
/
serious
/
shareware
/
programming
/
emacs-complete
/
fsf
/
emacs
/
vms
/
compile.com
< prev
next >
Wrap
Text File
|
1993-05-18
|
4KB
|
139 lines
$ set noverify
$!
$! VMS command file to recompile all Emacs .C files which need recompilation.
$! These are all .C files that have no .OBJ files or that are newer then the
$! corresponding .OBJ files. This file is self contained and does not require
$! you to do anything before running it.
$!
$! Arguments
$! P1 any value forces recompilation of all .C files
$!
$! History
$! Mukesh Prasad 18 Nov 1985
$! original version
$! Roland Roberts 30 Oct 1992 roberts@nsrl31.nsrl.rochester.edu
$! subsidiary file ccom.com rolled into this version.
$! allows default directory to be a search list (done in precomp.com)
$! however, should normally be executed from [.vms] with no search list.
$! added (restored?) option to force recompilation.
$!
$ if p1 .eqs. ""
$ then force = 0
$ else force = 1
$ endif
$ @precomp
$ olddef = f$environment("DEFAULT")
$ if f$locate(".VMS]",olddef) .ne. f$length(olddef) .or. -
f$locate("[VMS]",olddef) .ne. f$length(olddef) then -
set default [-.oldxmenu]
$ mms/ignore=w
$ set def [-.src]
$ write sys$output "---------------"
$!
$! If there is any need for a listing file (foo.LIS), do the call like this:
$!
$! $ call recomp foo.c "''ccom' /list/show=include"
$!
$ call recomp dispnew.c
$ call recomp frame.c
$ call recomp scroll.c
$ call recomp xdisp.c
$ call recomp window.c
$ call recomp term.c
$ call recomp cm.c
$! The following files are not needed if you don't want to compile for X
$ call recomp xterm.c
$ call recomp xfns.c
$ call recomp xfaces.c
$ call recomp xmenu.c
$ call recomp xselect.c
$ call recomp xrdb.c
$! End of X files
$ call recomp emacs.c
$ call recomp keyboard.c
$ call recomp macros.c
$ call recomp keymap.c
$ call recomp sysdep.c
$ call recomp buffer.c
$ call recomp filelock.c
$ call recomp insdel.c
$ call recomp marker.c
$ call recomp intervals.c
$ call recomp textprop.c
$ call recomp minibuf.c
$ call recomp fileio.c
$ call recomp dired.c
$ call recomp filemode.c
$ call recomp cmds.c
$ call recomp casetab.c
$ call recomp casefiddle.c
$ call recomp indent.c
$ call recomp search.c
$ call recomp regex.c
$ call recomp undo.c
$ call recomp alloc.c
$ call recomp data.c
$ call recomp doc.c
$ call recomp editfns.c
$ call recomp callint.c
$ call recomp eval.c
$ call recomp floatfns.c
$ call recomp fns.c
$ call recomp print.c
$ call recomp lread.c
$ call recomp abbrev.c
$ call recomp syntax.c
$ call recomp mocklisp.c
$ call recomp bytecode.c
$ call recomp process.c
$ call recomp callproc.c
$ call recomp doprnt.c
$ call recomp getloadavg.c
$ call recomp vmsfns.c
$ call recomp vmsproc.c
$ call recomp vmsmap.c
$ call recomp termcap.c
$ call recomp tparam.c
$ call recomp lastfile.c
$ call recomp vmstime.c
$ call recomp vmsgmalloc.c
$! call recomp ralloc.c ! This one doesn't work. In the near future
$ ! it won't be needed.
$ call recomp vm-limit.c
$ call recomp alloca.c
$ set default 'olddef'
$ exit
$!
$! VMS subroutine file to recompile a .C file which needs recompilation.
$! This is a .C files that has no .OBJ file or that is newer
$! than the corresponding .OBJ file. This file is self contained
$! and does not require you to do anything before running it.
$!
$ recomp: subroutine
$ on error then continue
$ file = f$search(p1,1)
$ cmd = p2
$ if cmd .eqs. ""
$ then
$ if "''ccom'" .eqs. "" then call precomp
$ cmd = "ccom"
$ endif
$ name = f$parse(file,,,"NAME")
$ obj = name + ".OBJ"
$ if (f$search(obj) .nes. "") .and. (.not. force)
$ then
$ if f$cvtime(f$file(file,"RDT")) .les. f$cvtime(f$file(obj,"RDT")) then -
goto sub_exit
$ endif
$ obj = f$parse(file,,,"DEVICE") + f$parse(file,,,"DIRECTORY") + obj
$ write sys$output "Compiling ''name'..."
$ on error then goto error_exit
$ 'cmd' 'file' /object='obj'
$ if f$search(obj) .nes. "" then purge /nolog 'obj'
$error_exit:
$ write sys$output "---------------"
$sub_exit:
$ exit
$!
$ endsubroutine